class GeyMyCarInfo {
  DriverInfo driverInfo;
  VehicleInfo vehicleInfo;

  GeyMyCarInfo({this.driverInfo, this.vehicleInfo});

  GeyMyCarInfo.fromJson(Map<String, dynamic> json) {
    driverInfo = json['driver_info'] != null
        ? new DriverInfo.fromJson(json['driver_info'])
        : null;
    vehicleInfo = json['vehicle_info'] != null
        ? new VehicleInfo.fromJson(json['vehicle_info'])
        : null;
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data = new Map<String, dynamic>();
    if (this.driverInfo != null) {
      data['driver_info'] = this.driverInfo.toJson();
    }
    if (this.vehicleInfo != null) {
      data['vehicle_info'] = this.vehicleInfo.toJson();
    }
    return data;
  }
}

class DriverInfo {
  String id;
  String driverId;
  String address;
  String addressCode;
  String driverName;
  String driverPhone;
  String driverGender;
  String driverBirthday;
  String driverNationality;
  String driverNation;
  String driverMaritalStatus;
  String driverLanguageLevel;
  String driverEducation;
  String driverCensus;
  String driverAddress;
  String driverContactAddress;
  String photoId;
  String licenseId;
  String licensePhotoId;
  String driverType;
  String getdriverLicenseDate;
  String driverLicenseOn;
  String driverLicenseOff;
  String taxiDriver;
  String certificeNo;
  String networkCarissueOrganization;
  String networkCarissueDate;
  String getNetworkCarproofDate;
  String networkCarProofOn;
  String networkCarProofOff;
  String registerDate;
  String fulltimeDriver;
  String indriverBlacklist;
  String commercialType;
  String contractCompany;
  String contractOn;
  String contractOff;
  String createTime;
  String createBy;
  String updateTime;
  String updateBy;
  String status;
  String idNo;
  String iDFront;
  String iDBack;
  String licenseFront;
  String licenseBack;
  String operationModel;
  String message;
  String modifyStatus;
  String employment;
  String operate;
  String qualificationStatus;

  DriverInfo(
      {this.id,
      this.driverId,
      this.address,
      this.addressCode,
      this.driverName,
      this.driverPhone,
      this.driverGender,
      this.driverBirthday,
      this.driverNationality,
      this.driverNation,
      this.driverMaritalStatus,
      this.driverLanguageLevel,
      this.driverEducation,
      this.driverCensus,
      this.driverAddress,
      this.driverContactAddress,
      this.photoId,
      this.licenseId,
      this.licensePhotoId,
      this.driverType,
      this.getdriverLicenseDate,
      this.driverLicenseOn,
      this.driverLicenseOff,
      this.taxiDriver,
      this.certificeNo,
      this.networkCarissueOrganization,
      this.networkCarissueDate,
      this.getNetworkCarproofDate,
      this.networkCarProofOn,
      this.networkCarProofOff,
      this.registerDate,
      this.fulltimeDriver,
      this.indriverBlacklist,
      this.commercialType,
      this.contractCompany,
      this.contractOn,
      this.contractOff,
      this.createTime,
      this.createBy,
      this.updateTime,
      this.updateBy,
      this.status,
      this.idNo,
      this.iDFront,
      this.iDBack,
      this.licenseFront,
      this.licenseBack,
      this.operationModel,
      this.message,
      this.modifyStatus,
      this.employment,
      this.operate,
      this.qualificationStatus});

  DriverInfo.fromJson(Map<String, dynamic> json) {
    id = json['id'];
    driverId = json['driver_id'];
    address = json['address'];
    addressCode = json['address_code'];
    driverName = json['driver_name'];
    driverPhone = json['driver_phone'];
    driverGender = json['driver_gender'];
    driverBirthday = json['driver_birthday'];
    driverNationality = json['driver_nationality'];
    driverNation = json['driver_nation'];
    driverMaritalStatus = json['driver_marital_status'];
    driverLanguageLevel = json['driver_language_level'];
    driverEducation = json['driver_education'];
    driverCensus = json['driver_census'];
    driverAddress = json['driver_address'];
    driverContactAddress = json['driver_contact_address'];
    photoId = json['photo_id'];
    licenseId = json['license_id'];
    licensePhotoId = json['license_photo_id'];
    driverType = json['driver_type'];
    getdriverLicenseDate = json['getdriver_license_date'];
    driverLicenseOn = json['driver_license_on'];
    driverLicenseOff = json['driver_license_off'];
    taxiDriver = json['taxi_driver'];
    certificeNo = json['certifice_no'];
    networkCarissueOrganization = json['network_carissue_organization'];
    networkCarissueDate = json['network_carissue_date'];
    getNetworkCarproofDate = json['get_network_carproof_date'];
    networkCarProofOn = json['network_car_proof_on'];
    networkCarProofOff = json['network_car_proof_off'];
    registerDate = json['register_date'];
    fulltimeDriver = json['fulltime_driver'];
    indriverBlacklist = json['indriver_blacklist'];
    commercialType = json['commercial_type'];
    contractCompany = json['contract_company'];
    contractOn = json['contract_on'];
    contractOff = json['contract_off'];
    createTime = json['create_time'];
    createBy = json['create_by'];
    updateTime = json['update_time'];
    updateBy = json['update_by'];
    status = json['status'];
    idNo = json['id_no'];
    iDFront = json['IDFront'];
    iDBack = json['IDBack'];
    licenseFront = json['licenseFront'];
    licenseBack = json['licenseBack'];
    operationModel = json['operation_model'];
    message = json['message'];
    modifyStatus = json['modify_status'];
    employment = json['employment'];
    operate = json['operate'];
    qualificationStatus = json['qualification_status'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data = new Map<String, dynamic>();
    data['id'] = this.id;
    data['driver_id'] = this.driverId;
    data['address'] = this.address;
    data['address_code'] = this.addressCode;
    data['driver_name'] = this.driverName;
    data['driver_phone'] = this.driverPhone;
    data['driver_gender'] = this.driverGender;
    data['driver_birthday'] = this.driverBirthday;
    data['driver_nationality'] = this.driverNationality;
    data['driver_nation'] = this.driverNation;
    data['driver_marital_status'] = this.driverMaritalStatus;
    data['driver_language_level'] = this.driverLanguageLevel;
    data['driver_education'] = this.driverEducation;
    data['driver_census'] = this.driverCensus;
    data['driver_address'] = this.driverAddress;
    data['driver_contact_address'] = this.driverContactAddress;
    data['photo_id'] = this.photoId;
    data['license_id'] = this.licenseId;
    data['license_photo_id'] = this.licensePhotoId;
    data['driver_type'] = this.driverType;
    data['getdriver_license_date'] = this.getdriverLicenseDate;
    data['driver_license_on'] = this.driverLicenseOn;
    data['driver_license_off'] = this.driverLicenseOff;
    data['taxi_driver'] = this.taxiDriver;
    data['certifice_no'] = this.certificeNo;
    data['network_carissue_organization'] = this.networkCarissueOrganization;
    data['network_carissue_date'] = this.networkCarissueDate;
    data['get_network_carproof_date'] = this.getNetworkCarproofDate;
    data['network_car_proof_on'] = this.networkCarProofOn;
    data['network_car_proof_off'] = this.networkCarProofOff;
    data['register_date'] = this.registerDate;
    data['fulltime_driver'] = this.fulltimeDriver;
    data['indriver_blacklist'] = this.indriverBlacklist;
    data['commercial_type'] = this.commercialType;
    data['contract_company'] = this.contractCompany;
    data['contract_on'] = this.contractOn;
    data['contract_off'] = this.contractOff;
    data['create_time'] = this.createTime;
    data['create_by'] = this.createBy;
    data['update_time'] = this.updateTime;
    data['update_by'] = this.updateBy;
    data['status'] = this.status;
    data['id_no'] = this.idNo;
    data['IDFront'] = this.iDFront;
    data['IDBack'] = this.iDBack;
    data['licenseFront'] = this.licenseFront;
    data['licenseBack'] = this.licenseBack;
    data['operation_model'] = this.operationModel;
    data['message'] = this.message;
    data['modify_status'] = this.modifyStatus;
    data['employment'] = this.employment;
    data['operate'] = this.operate;
    data['qualification_status'] = this.qualificationStatus;
    return data;
  }
}

class VehicleInfo {
  String id;
  String driverId;
  String address;
  String vehicleNo;
  String plateColor;
  int seats;
  String brand;
  String model;
  String vehicleType;
  String ownerName;
  String vehicleColor;
  String engineid;
  String vin;
  String certifyDateA;
  String fuelType;
  String engineDisplace;
  String photoId;
  String certificate;
  String transAgency;
  String transArea;
  String transDateStart;
  String transDateStop;
  String certifyDateB;
  String fixState;
  String nextFixDate;
  String checkState;
  String feePrintId;
  String gpsBrand;
  String gpsModel;
  String gpsImei;
  String gpsInstallDate;
  String registerDate;
  String commercialType;
  String fareType;
  String createtTime;
  String createBy;
  String updateTime;
  String updateBy;
  String driverLicenseFront;
  String driverLicenseBack;
  List<String> carImg;
  String distance;
  String modifyStatus;

  VehicleInfo(
      {this.id,
      this.driverId,
      this.address,
      this.vehicleNo,
      this.plateColor,
      this.seats,
      this.brand,
      this.model,
      this.vehicleType,
      this.ownerName,
      this.vehicleColor,
      this.engineid,
      this.vin,
      this.certifyDateA,
      this.fuelType,
      this.engineDisplace,
      this.photoId,
      this.certificate,
      this.transAgency,
      this.transArea,
      this.transDateStart,
      this.transDateStop,
      this.certifyDateB,
      this.fixState,
      this.nextFixDate,
      this.checkState,
      this.feePrintId,
      this.gpsBrand,
      this.gpsModel,
      this.gpsImei,
      this.gpsInstallDate,
      this.registerDate,
      this.commercialType,
      this.fareType,
      this.createtTime,
      this.createBy,
      this.updateTime,
      this.updateBy,
      this.driverLicenseFront,
      this.driverLicenseBack,
      this.carImg,
      this.distance,
      this.modifyStatus});

  VehicleInfo.fromJson(Map<String, dynamic> json) {
    id = json['id'];
    driverId = json['driver_id'];
    address = json['address'];
    vehicleNo = json['vehicle_no'];
    plateColor = json['plate_color'];
    seats = json['seats'];
    brand = json['brand'];
    model = json['model'];
    vehicleType = json['vehicle_type'];
    ownerName = json['owner_name'];
    vehicleColor = json['vehicle_color'];
    engineid = json['engineid'];
    vin = json['vin'];
    certifyDateA = json['certify_date_a'];
    fuelType = json['fuel_type'];
    engineDisplace = json['engine_displace'];
    photoId = json['photo_id'];
    certificate = json['certificate'];
    transAgency = json['trans_agency'];
    transArea = json['trans_area'];
    transDateStart = json['trans_date_start'];
    transDateStop = json['trans_date_stop'];
    certifyDateB = json['certify_date_b'];
    fixState = json['fix_state'];
    nextFixDate = json['next_fix_date'];
    checkState = json['check_state'];
    feePrintId = json['fee_print_id'];
    gpsBrand = json['gps_brand'];
    gpsModel = json['gps_model'];
    gpsImei = json['gps_imei'];
    gpsInstallDate = json['gps_install_date'];
    registerDate = json['register_date'];
    commercialType = json['commercial_type'];
    fareType = json['fare_type'];
    createtTime = json['createt_time'];
    createBy = json['create_by'];
    updateTime = json['update_time'];
    updateBy = json['update_by'];
    driverLicenseFront = json['driver_license_front'];
    driverLicenseBack = json['driver_license_back'];
    carImg = json['car_img'].cast<String>();
    distance = json['distance'];
    modifyStatus = json['modify_status'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data = new Map<String, dynamic>();
    data['id'] = this.id;
    data['driver_id'] = this.driverId;
    data['address'] = this.address;
    data['vehicle_no'] = this.vehicleNo;
    data['plate_color'] = this.plateColor;
    data['seats'] = this.seats;
    data['brand'] = this.brand;
    data['model'] = this.model;
    data['vehicle_type'] = this.vehicleType;
    data['owner_name'] = this.ownerName;
    data['vehicle_color'] = this.vehicleColor;
    data['engineid'] = this.engineid;
    data['vin'] = this.vin;
    data['certify_date_a'] = this.certifyDateA;
    data['fuel_type'] = this.fuelType;
    data['engine_displace'] = this.engineDisplace;
    data['photo_id'] = this.photoId;
    data['certificate'] = this.certificate;
    data['trans_agency'] = this.transAgency;
    data['trans_area'] = this.transArea;
    data['trans_date_start'] = this.transDateStart;
    data['trans_date_stop'] = this.transDateStop;
    data['certify_date_b'] = this.certifyDateB;
    data['fix_state'] = this.fixState;
    data['next_fix_date'] = this.nextFixDate;
    data['check_state'] = this.checkState;
    data['fee_print_id'] = this.feePrintId;
    data['gps_brand'] = this.gpsBrand;
    data['gps_model'] = this.gpsModel;
    data['gps_imei'] = this.gpsImei;
    data['gps_install_date'] = this.gpsInstallDate;
    data['register_date'] = this.registerDate;
    data['commercial_type'] = this.commercialType;
    data['fare_type'] = this.fareType;
    data['createt_time'] = this.createtTime;
    data['create_by'] = this.createBy;
    data['update_time'] = this.updateTime;
    data['update_by'] = this.updateBy;
    data['driver_license_front'] = this.driverLicenseFront;
    data['driver_license_back'] = this.driverLicenseBack;
    data['car_img'] = this.carImg;
    data['distance'] = this.distance;
    data['modify_status'] = this.modifyStatus;
    return data;
  }
}
